import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)

/**
 * esta clase es la super clase de todas las naves enemigas 
 * de la cual todas heredan una salud y una posision del scroll 
 * 
 * @author (Octavio y Cesar) 
 * @version (2014.11.28)
 */
public class Enemy extends Actor
{
    private int health;
    private int scrollPos;
    private  Guns gun;
    
    /**
     * contructor de variables para la clase Enemy
     */
    public Enemy (int aHealth, int scrollPos)
    { 
       this.scrollPos=scrollPos; 
       health=aHealth;
       gun=new Guns();
    }
    
    
    /**
     * Act - do whatever the Enemy wants to do. This method is called whenever
     * the 'Act' or 'Run' button gets pressed in the environment.
     */
    public void act() 
    {
        // Add your action code here.
        
        
         
    }    
    
    /**
     * metodo que checa cuando un enemigo es tocado por una bala del heroe y le resta salud 
     */
    public void checaVida()
    {
        
        if(isTouching(Bullet.class))
        {

            gun=(Guns)getOneIntersectingObject(Bullet.class);
            int aux1=getHealth()-gun.getDamage();
            setHealth(aux1);
            gun.hide();

        }
        else
        if(isTouching(Laser.class)) 
        {
            gun=(Guns)getOneIntersectingObject(Laser.class);
            int aux1=getHealth()-gun.getDamage();
            setHealth(aux1);
            gun.hide();
        }
        else
        if(isTouching(Bomb.class))
        {
            gun=(Guns)getOneIntersectingObject(Bomb.class);
            int aux1=getHealth()-gun.getDamage();
            setHealth(aux1);
            gun.hide();
        }

        
    }
    
    /**
     * @return la salud actual del enemigo
     */
    public int getHealth()
    {
        return health;
    }
    
    /**
     * @param un numero entero y lo iguala a la variable de instancia health
     */
   public void setHealth(int aHealth)
   {
     health=aHealth;
   }
}
